plugins {
    id 'java'
    id 'org.springframework.boot' version '3.1.0'
    id 'io.spring.dependency-management' version '1.1.0'
}

group = 'org.example'
version = '1.0-SNAPSHOT'

repositories {
    mavenCentral()
}

dependencies {
    testImplementation platform('org.junit:junit-bom:5.9.2')

    testImplementation 'org.springframework.boot:spring-boot-starter-test:3.1.0'
    testImplementation 'org.junit.jupiter:junit-jupiter:5.9.2'
    implementation 'org.springframework.boot:spring-boot-starter-web:3.1.0'
    compileOnly 'org.projectlombok:lombok:1.18.26'
    annotationProcessor 'org.projectlombok:lombok:1.18.26'

    //security
    implementation 'org.springframework.boot:spring-boot-starter-security:3.0.4'
    testImplementation 'org.springframework.security:spring-security-test:6.0.2'

    //validation
    implementation 'org.springframework.boot:spring-boot-starter-validation'

    //template
    implementation 'org.springframework.boot:spring-boot-starter-thymeleaf:3.0.4'
    implementation 'org.thymeleaf.extras:thymeleaf-extras-springsecurity6:3.1.1.RELEASE'

    // https://mvnrepository.com/artifact/com.jcraft/jsch for SSH check
    implementation 'com.jcraft:jsch:0.1.55'

    // for FTP check
    implementation 'commons-net:commons-net:3.10.0'


    //database
    implementation 'org.springframework.boot:spring-boot-starter-data-jpa:3.0.4'
    implementation "org.flywaydb:flyway-mysql"
    implementation 'org.flywaydb:flyway-core'

    runtimeOnly 'org.postgresql:postgresql'

}

test {
    useJUnitPlatform()
}